﻿using System.Collections.Generic;
using System.ComponentModel;
using System;
using UtfprLibrary.ComponentModel.Security;

namespace UtfprLibrary.Windows.Forms.ComponentModel.Security {
    /// <summary>
    /// TODO
    /// </summary>
    [TypeConverter(typeof(UtfprRestrictionConverter))]
    [Serializable()]
    public class UtfprRestriction : IUtfprRestriction {
        /// <summary>
        /// TODO
        /// </summary>
        /// <returns></returns>
        public override string ToString() {
            return "UtfprRestriction";
        }

        /// <summary>
        /// TODO
        /// </summary>
        public UtfprRestriction() { }

        /// <summary>
        /// TODO
        /// </summary>
        /// <param name="functionsAndOperations"></param>
        public UtfprRestriction(Dictionary<IUtfprKeyName, IEnumerable<IUtfprKeyName>> functionsAndOperations) {
            this._functionsAndOperations = functionsAndOperations;
        }

        private Dictionary<IUtfprKeyName, IEnumerable<IUtfprKeyName>> _functionsAndOperations;
        /// <summary>
        /// TODO
        /// </summary>
        public Dictionary<IUtfprKeyName, IEnumerable<IUtfprKeyName>> FunctionsAndOperations {
            get { return _functionsAndOperations; }
            set { _functionsAndOperations = value; }
        }
    }
}
